1. Field of the Invention
The present invention relates to a printer with an expandable print buffer, and more particularly to a printer wherein a storage capacity of a print image buffer for storing bit image data is expanded to a degree depending on a data processing load imposed when compressed image data received from an external unit is decoded and developed into the bit image data.
2. Description of the Related Art
Laser printers are capable of high speed printing. Laser printers are usually connected to an external unit such as a host computer or a personal computer. The laser printer receives print data, such as text data and image data, from the external unit, develops the print data into bit image data (that is, into a form it can use for printing), and stores the bit image data in a print image buffer. Printing is performed by serially retrieving the bit image data from the print image buffer and raster scanning the bit image data on a dot-line basis. The image or text is printed on a print medium by a printing mechanism.
Print image buffers with sufficient fixed capacity to store a page's worth of bit image data must have a large capacity, such a one megabyte. A large capacity memory chip must be provided for such large print image buffers. Addition of such a large memory chip not only increases the cost of the laser printer but also takes up extra space within the laser printer. Many printers with expansion print image buffers have been proposed to overcome these problems. Such printer use band buffer systems wherein the print image buffer is initially given at a small capacity equivalent to 1/n page of information wherein n is an integer. When a print overrun error is generated, the capacity of the print image buffer is expanded to an appropriate size.
For example, Japanese Laid-Open Patent Publication No. HEI-2-52763 describes a printer with a text memory (intermediate buffer) and a video band buffer (print image buffer) provided in the same memory. The text memory is for storing text data received from the external source. The video band buffer is for storing bit image data developed from the text data in the text memory. The video band buffer has a fixed memory capacity for 128 raster scan lines (i.e., about 1/20 of a page) and can be expanded beyond this capacity when needed. Each time an overrun error occurs during printing of print data, the capacity of the video band buffer is expanded by an amount equivalent to 64 raster scan lines of data. The band buffer capacity will therefore sequentially increase when print overrun errors repeatedly occur during printing processes.
However, a large capacity video buffer is necessary when a great deal of processing time is required to decode print data received in compressed form and to develop the compressed print data into dot images. Because the storage capacity of the video buffer described in Japanese Laid-Open Patent Publication No. HEI-2-52763 increases only in increments equivalent to 64 raster scan lines each time an error occurs, print processes must repeatedly attempted and many errors generated before the buffer capacity increases to the point where print data can be printed. Print processes become troublesome and efficiency of printing greatly decreases.
On the other hand, if the video buffer is designed to its capacity expands with each error by a larger number of raster scan lines, for example, 100 to 150 raster scan lines instead of 64 raster scan lines, print data that puts a large load on data processes can be printed smoothly with fewer generations of errors. However, when capacity of the video buffer is caused to increase by such large amounts, the size of the video buffer can not be precisely set to a capacity appropriate for the load of the print data. Also, when the capacity of the video buffer is increased by too large an amount, the capacity of the coexisting text memory is reduced to an unnecessarily small amount.